import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Objects;
public enum Status {
SUCCESS(1, "success"),
FAILURE(0, "failure");
@JsonValue
final int code;
final String message;
Status(int code, String message) {
this.code = code;
this.message = message;
}
public int code() {
return code;
}
@JsonCreator
public static Status resolve(Integer code) {
if (Objects.nonNull(code)) {
for (Status e : values()) {
if (Objects.equals(code, e.code)) {
return e;
}
}
}
return null;
}
}